#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
#define maxn 5000004
int arr[maxn], n, k;
void quickSort(int l, int r) //快排思想
{
    int pivot = arr[(l + r) / 2];
    int i = l, j = r;
    do
    {
        while (i <= j && arr[i] < pivot)
            i++;
        while (i <= j && pivot < arr[j])
            j--;
        if (i <= j)
        {
            swap(arr[i], arr[j]);
            i++, j--;
        }
    } while (i <= j);
    // l-------j-pivot-i---------r
    //如果pivot所在的位置就是第k个,那么可以直接输出
    //如果l<k<j,只需要对(l,j)这个区域搜索就可以了
    //如果i<k<r也是一样的
    if (k <= j)
        quickSort(l, j);
    else if (i <= k)
        quickSort(i, r);
    else
        printf("%d\n", arr[k]);
}
int main()
{
    scanf("%d%d", &n, &k);
    for (int i = 0; i < n; ++i)
    {
        scanf("%d", &arr[i]);
    }
    quickSort(0, n - 1);
    return 0;
}